Initial Setup for Performance Rules
To optimize your site, we recommend starting with the following basic configuration and then adding additional rules as needed.
Initial Setup
The basic site rule setup includes the following components:
- A spread rule that delays the loading of all third parties until after onload and spreads them out.
- A set of exceptions for third parties that need to load before onload.
The spread rule is a catch-all rule that delays the loading of every third party until after onload the time it takes for the initial HTML document to load with all stylesheets, images, and subframes. At this point, the page is usually interactive to users. "Onload time" is equal to the high-resolution timestamp returned by the PerformanceNavigationTiming.loadEventEnd property., and also spreads out the loading by 10 milliseconds so there is no bottleneck. As a best practice, always create this rule first, and ensure that it appears at the bottom of the rules list.
To create a spread rule, set the following parameters:
Rule Type | Dynamic Sequencing |
Sequence Type | Spread |
You can experiment with how far apart to space the third parties, but we recommend starting with a value of 10 milliseconds, testing, and then adjusting as needed.
After you create the spread rule, you set any third party that is critical to the initial loading of your site to load normally. We recommend excluding the following items from the spread rule:
- All First Parties (includes script and image resources)
- iFrames
- jQuery
- Tag managers
- A/B testing programs (Monetate, Optimizely, etc.)
To determine which tag manager your site uses, open the Inventory page. Click Category to sort the list of third parties by category. Your tag managers are categorized as Tag Management.
For more information on which resources to exclude, see Site Rules Recommendations.
To create the All First Parties rule, set the following parameters in the Create Rule slider:
Rule Type | Sequence Resource |
Resource to Sequence | All First Parties |
Sequence Type | Load Normally |
To create the other exclusions, set the following parameters:
Rule Type | Sequence Resource |
Resource to Sequence | Third Party (select the third party from the drop-down list) |
Sequence Type | Load Normally |
For the most part, each rule in your configuration overrides the ones below it, so we recommend creating the rules in the following order:
The spread rule
Third party sequencing rules
Third party exceptions
First Parties, iFrames, and jQuery
The spread rule can appear anywhere in the list.
Here's an example: